package com.ruoyi.guanbao.ims.domain;

import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 进销存表
 * </p>
 *
 * @author zhangzk
 * @since 2025-03-26
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("GUANBAO_RESULT_INV")
@ApiModel(value="GuanbaoResultInv对象", description="进销存表")
public class GuanbaoResultInv extends Model<GuanbaoResultInv> {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "ID")
    @TableField("ID")
    private String id;

    @ApiModelProperty(value = "年")
    @TableField("YEAR")
    private Integer year;

    @ApiModelProperty(value = "月")
    @TableField("MONTH")
    private Integer month;

    @ApiModelProperty(value = "年月")
    @TableField("YEAR_MONTH")
    private String yearMonth;

    @ApiModelProperty(value = "库存组织编码")
    @TableField("INVENTORY_ORG_CODE")
    private String inventoryOrgCode;

    @ApiModelProperty(value = "库存组织名称")
    @TableField("INVENTORY_ORG_NAME")
    private String inventoryOrgName;

    @ApiModelProperty(value = "核算类型")
    @TableField("ACCT_TYPE")
    private String acctType;

    @ApiModelProperty(value = "物料编码")
    @TableField("MATERIAL_CODE")
    private String materialCode;

    @ApiModelProperty(value = "物料名称")
    @TableField("MATERIAL_NAME")
    private String materialName;

    @ApiModelProperty(value = "规格")
    @TableField("SPECIFICATION")
    private String specification;

    @ApiModelProperty(value = "基本计量单位")
    @TableField("FBASE_UNIT")
    private String fbaseUnit;

    @ApiModelProperty(value = "物料状态")
    @TableField("MATERIAL_STATUS")
    private String materialStatus;

    @ApiModelProperty(value = "期初数量")
    @TableField("FPERIOD_BEGIN_QTY")
    private BigDecimal fperiodBeginQty;

    @ApiModelProperty(value = "期初单价")
    @TableField("FPERIOD_BEGIN_PRICE")
    private BigDecimal fperiodBeginPrice;

    @ApiModelProperty(value = "期初金额")
    @TableField("FPERIOD_BEGIN_AMOUNT")
    private BigDecimal fperiodBeginAmount;

    @ApiModelProperty(value = "收入数量")
    @TableField("FPERIOD_RECEIPT_QTY")
    private BigDecimal fperiodReceiptQty;

    @ApiModelProperty(value = "收入单价")
    @TableField("FPERIOD_RECEIPT_PRICE")
    private BigDecimal fperiodReceiptPrice;

    @ApiModelProperty(value = "收入金额")
    @TableField("FPERIOD_RECEIPT_AMOUNT")
    private BigDecimal fperiodReceiptAmount;

    @ApiModelProperty(value = "发出数量")
    @TableField("FPERIOD_ISSUE_QTY")
    private BigDecimal fperiodIssueQty;

    @ApiModelProperty(value = "发出单价")
    @TableField("FPERIOD_ISSUE_PRICE")
    private BigDecimal fperiodIssuePrice;

    @ApiModelProperty(value = "发出金额")
    @TableField("FPERIOD_ISSUE_AMOUNT")
    private BigDecimal fperiodIssueAmount;

    @ApiModelProperty(value = "结存数量")
    @TableField("FPERIOD_END_QTY")
    private BigDecimal fperiodEndQty;

    @ApiModelProperty(value = "结存单价")
    @TableField("FPERIOD_END_PRICE")
    private BigDecimal fperiodEndPrice;

    @ApiModelProperty(value = "结存金额")
    @TableField("FPERIOD_END_AMOUNT")
    private BigDecimal fperiodEndAmount;

    @ApiModelProperty(value = "记账分类")
    @TableField("KAC_TYPE")
    private String kacType;

    @ApiModelProperty(value = "备注")
    @TableField("REMARKS")
    private String remarks;

    @ApiModelProperty(value = "创建人")
    @TableField("CREATED_BY")
    private String createdBy;

    @ApiModelProperty(value = "创建时间")
    @TableField("CREATED_AT")
    private LocalDateTime createdAt;

    @ApiModelProperty(value = "期初数量G")
    @TableField("FPERIOD_BEGIN_QTY_G")
    private BigDecimal fperiodBeginQtyG;

    @ApiModelProperty(value = "期初单价G")
    @TableField("FPERIOD_BEGIN_PRICE_G")
    private BigDecimal fperiodBeginPriceG;

    @ApiModelProperty(value = "期初余额G")
    @TableField("FPERIOD_BEGIN_AMOUNT_G")
    private BigDecimal fperiodBeginAmountG;

    @ApiModelProperty(value = "收入数量G")
    @TableField("FPERIOD_RECEIPT_QTY_G")
    private BigDecimal fperiodReceiptQtyG;

    @ApiModelProperty(value = "收入单价G")
    @TableField("FPERIOD_RECEIPT_PRICE_G")
    private BigDecimal fperiodReceiptPriceG;

    @ApiModelProperty(value = "收入金额G")
    @TableField("FPERIOD_RECEIPT_AMOUNT_G")
    private BigDecimal fperiodReceiptAmountG;

    @ApiModelProperty(value = "发出数量G")
    @TableField("FPERIOD_ISSUE_QTY_G")
    private BigDecimal fperiodIssueQtyG;

    @ApiModelProperty(value = "发出单价G")
    @TableField("FPERIOD_ISSUE_PRICE_G")
    private BigDecimal fperiodIssuePriceG;

    @ApiModelProperty(value = "发出金额G")
    @TableField("FPERIOD_ISSUE_AMOUNT_G")
    private BigDecimal fperiodIssueAmountG;

    @ApiModelProperty(value = "结存数量G")
    @TableField("FPERIOD_END_QTY_G")
    private BigDecimal fperiodEndQtyG;

    @ApiModelProperty(value = "结存单价G")
    @TableField("FPERIOD_END_PRICE_G")
    private BigDecimal fperiodEndPriceG;

    @ApiModelProperty(value = "结存金额G")
    @TableField("FPERIOD_END_AMOUNT_G")
    private BigDecimal fperiodEndAmountG;


    @Override
    protected Serializable pkVal() {
        return null;
    }

}
